package io.datajek.springbasics.movierecommendersystem.lesson11;

import io.datajek.springbasics.movierecommendersystem.lesson3.Filter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

@Component
public class RecommenderImplementation {

    private Logger logger = LoggerFactory.getLogger(this.getClass());
    private Filter filter;

 @Autowired
 public void setFilter(Filter filter) {
     logger.info("In RecommenderImplementation setter method..dependency injection");
     this.filter = filter;
 }

    //使用过滤器获得推荐
    public String [] recommendMovies (String movie) {

        String[] results = filter.getRecommendations("Finding Dory");

        return results;
    }
    @PostConstruct
    public  void postConstruct(){
     //初始化代码
        logger.info("In RecommenderImplementation postConstruct method");
    }

    @PreDestroy
    public void preDestroy(){
     //清理代码
        logger.info("In RecommenderImplementation preDestroy method");
    }
    }
